using SqlSugar;
using System.Collections.Generic;

namespace CoreShop.Model
{
    public class CouponModel
    {
        public corecmsfoodcoupon couponInfo { get; set; }
        public corecmsfoodcouponuser couponUser { get; set; }
    }

    /// <summary>
    /// 用户绑定优惠卷表
    /// </summary>
    public class corecmsfoodcoupon
    {
        /// <summary>
        /// 构造函数
        /// </summary>
        public corecmsfoodcoupon()
        {
        }

        /// <summary>
        /// 序号
        /// </summary>
        [SugarColumn(ColumnDescription = "序号", IsPrimaryKey = true)]
        public System.Int64 id { get; set; }


        /// <summary>
        /// 品牌id
        /// </summary>
        [SugarColumn(ColumnDescription = "品牌id")]
        public System.Int32 corpId { get; set; }


        /// <summary>
        /// 门店id
        /// </summary>
        [SugarColumn(ColumnDescription = "门店id")]
        [SplitField]
        public System.Int32 storeId { get; set; }


        /// <summary>
        /// 优惠券名称
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券名称", Length = 30)]
        public System.String name { get; set; }


        /// <summary>
        /// 优惠券类型 （1.代金券 ;2.商品兑换券;3.折扣券)
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券类型 （1.代金券 ;2.商品兑换券;3.折扣券)", IsNullable = true)]
        public System.Int32? typeId { get; set; }


        /// <summary>
        /// 卷面值
        /// </summary>
        [SugarColumn(ColumnDescription = "卷面值", IsNullable = true)]
        public System.Decimal? parValue { get; set; }


        /// <summary>
        /// 使用有效期类型(0.自定义日期；1.相对有效期)
        /// </summary>
        [SugarColumn(ColumnDescription = "使用有效期类型(0.自定义日期；1.相对有效期)", IsNullable = true)]
        public System.Int32? validityType { get; set; }


        /// <summary>
        /// 优惠券开始有效期
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券开始有效期", IsNullable = true)]
        public System.DateTime? startDate { get; set; }


        /// <summary>
        /// 优惠券结束有效期
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券结束有效期", IsNullable = true)]
        public System.DateTime? endDate { get; set; }


        /// <summary>
        /// 有效天数
        /// </summary>
        [SugarColumn(ColumnDescription = "有效天数", IsNullable = true)]
        public System.Int32? validDay { get; set; }


        /// <summary>
        /// 可用周期( 0.每天；1.周（周一至周日);2.月（1-31号）)
        /// </summary>
        [SugarColumn(ColumnDescription = "可用周期( 0.每天；1.周（周一至周日);2.月（1-31号）)", IsNullable = true)]
        public System.Int32? cycleType { get; set; }


        /// <summary>
        /// 可用周期值
        /// </summary>
        [SugarColumn(ColumnDescription = "可用周期值", Length = 100, IsNullable = true)]
        public System.String cycelValue { get; set; } = "";


        /// <summary>
        /// 适用商品类型（0:全部商品，1：指定适用商品，1：指定不适用商品）
        /// </summary>
        [SugarColumn(ColumnDescription = "适用商品类型（0:全部商品，1：指定适用商品，2：指定不适用商品）", IsNullable = true)]
        public System.Int32? foodRange { get; set; }


        /// <summary>
        /// 适用/不适用商品id集合
        /// </summary>
        [SugarColumn(ColumnDescription = "适用/不适用商品id集合", ColumnDataType = "text", IsNullable = true)]
        public System.String foodIds { get; set; }


        /// <summary>
        /// 适用/不适用商品id集合
        /// </summary>
        [SugarColumn(ColumnDescription = "适用/不适用商品规格id集合", ColumnDataType = "text", IsNullable = true)]
        public System.String foodSpecIds { get; set; }


        /// <summary>
        /// 适用/不适用商品分类id集合
        /// </summary>
        [SugarColumn(ColumnDescription = "适用/不适用商品分类id集合", ColumnDataType = "text", IsNullable = true)]
        public System.String foodTypeIds { get; set; }


        /// <summary>
        /// 指定方式（1.商品，2.类别）
        /// </summary>
        [SugarColumn(ColumnDescription = "指定方式（1.商品，2.类别））", IsNullable = true)]
        public System.Int32? appointType { get; set; }

        /// <summary>
        /// 最低消费额
        /// </summary>
        [SugarColumn(ColumnDescription = "最低消费额", IsNullable = true)]
        public System.Decimal? lowAmount { get; set; }


        /// <summary>
        /// 是否删除
        /// </summary>
        [SugarColumn(ColumnDescription = "是否删除", IsNullable = true)]
        public System.Boolean isDelete { get; set; }


        /// <summary>
        /// 部分渠道（1.收银pos，2.扫码点餐，3.自营外卖）
        /// </summary>
        [SugarColumn(ColumnDescription = "部分渠道（1.收银pos，2.扫码点餐，3.自营外卖）", Length = 10, IsNullable = true)]
        public System.String channelValue { get; set; }


        /// <summary>
        /// 是否可重复使用
        /// </summary>
        [SugarColumn(ColumnDescription = "是否可重复使用")]
        public System.Boolean reusable { get; set; }


        /// <summary>
        /// 优惠券说明
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券说明", Length = 200, IsNullable = true)]

        public System.String description { get; set; }


        /// <summary>
        /// 优惠券备注
        /// </summary>
        [SugarColumn(ColumnDescription = "优惠券备注", Length = 200, IsNullable = true)]
        public System.String remark { get; set; }


        /// <summary>
        /// 新增时间
        /// </summary>
        [SugarColumn(ColumnDescription = "新增时间", IsNullable = true)]
        public System.DateTime? createTime { get; set; }


        /// <summary>
        /// 修改时间
        /// </summary>
        [SugarColumn(ColumnDescription = "修改时间", IsNullable = true)]
        public System.DateTime? updateTime { get; set; }
    }
}
